<?php
class Subirimg_controller extends Base_controller 
{
	
	function __construct($registry)
	{
		parent::__construct($registry);
	
		// Cargar models requeridos
		$this->registry->usuario_model = new Usuario_model();
		$this->registry->departamento_model = new Departamento_model();
		$this->registry->pais_model = new Pais_model();
		$this->registry->contrato_model = new Contrato_model();
		$this->registry->tecnico_tipo_servicio_model = new Tecnico_tipo_servicio_model();
		$this->registry->tipo_servicio_model = new Tipo_servicio_model();
		$this->registry->evaluacion_model = new Evaluacion_model();
		$this->registry->imagen_model = new Imagen_model();
	}
	
	function index()
	{	
		$this->registry->template->view = 'subirimg';
		$this->registry->template->show('layout');
	}
	
	function cargarPantalla($contratoId)
	{
		$this->registry->template->contratoId = $contratoId;
		
		$this->registry->template->view = 'subirimg';
		$this->registry->template->show('layout_children');
	}
	
	//IMAGENES	
	public function subirimg()
	{
		// Tomo los valores de la imagen		
		$contratoId = $_POST['contratoId'];
		$titulo = $_POST['titulo'];
		$descripcion = $_POST['tddescripcion'];
		
		//comprobamos si ha ocurrido un error.
		if ($_FILES['imagen']['error'] > 0)
		{
			echo "ha ocurrido un error";
		} 
		else 
		{
		  	/*ahora vamos a verificar si el tipo de archivo es un tipo de imagen permitido.
		  	 * y que el tamano del archivo no exceda los 100kb
		  	 */ 
	  		$permitidos = array("image/jpg", "image/jpeg", "image/gif", "image/png");
	  		$limite_kb = 100;
		  
		  	if (in_array($_FILES['imagen']['type'], $permitidos) && $_FILES['imagen']['size'] <= $limite_kb * 1024)
		  	{
		    	//esta es la ruta donde copiaremos la imagen
		    	$target_path = site_url(array('web', 'pictures', $_FILES['imagen']['name']));
		    	
			    //comprobamos si este archivo existe para no volverlo a copiar.
				$nombre = $_FILES['imagen']['name'];
			
		    	if (!file_exists($target_path) && ($this->registry->imagen_model->existe($nombre) == 0))
		    	{
			    	// aqui movemos el archivo desde la ruta temporal a nuestra ruta
  			      	// usamos la variable $resultado para almacenar el resultado del proceso de mover el archivo
		      		// almacenara true o false
		      		$resultado = @move_uploaded_file($_FILES["imagen"]["tmp_name"], $_SERVER['DOCUMENT_ROOT'] . $target_path);
		      		 
		      		if ($resultado)
		      		{						
						$this->registry->imagen_model->id_fk_contrato = $contratoId;
						$this->registry->imagen_model->archivo = $nombre;
						$this->registry->imagen_model->descripcion =  $descripcion;
						$this->registry->imagen_model->titulo =  $titulo;
						$this->registry->imagen_model->insert();
						$this->registry->template->subirImagenOK = 'ok';
						$this->index();			
		      		} 
		      		else
		      		{
		    			echo "ocurrio un error al mover el archivo.";
		    		}
    			} 
    			else 
    			{
		   			echo $_FILES['imagen']['name'] . ", este archivo existe";
				}
			} 
			else 
			{
				echo "archivo no permitido, es tipo de archivo prohibido o excede el tamano de $limite_kb Kilobytes";
			}
		}
	}
}
?>